package com.ruoyi.publish.domain;

import java.util.Date;

import com.ruoyi.common.annotation.ExcelField;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 鉴定受理登记对象 id_accept_register
 *
 * @author confusefox
 * @date 2020-11-04
 */
public class IdAcceptRegister extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    private Long id;

    /**
     * 创建人姓名
     */
//    @Excel(name = "创建人姓名")
    private String createName;

    /**
     * 更新姓名
     */
//    @Excel(name = "更新姓名")
    private String updateName;

    /**
     * 送鉴单位（部门）id
     */
//    @Excel(name = "送鉴单位", readConverterExp = "部门")
    private Long sendUnitId;

    /**
     * 送鉴单位（部门）
     */
    @Excel(name = "送鉴单位", type = Excel.Type.ALL)
    private String sendUnit;

    /**
     * 来文标题
     */
    @Excel(name = "来文标题", type = Excel.Type.ALL)
    private String title;

    /**
     * 来文文号
     */
    @Excel(name = "来文文号", type = Excel.Type.ALL)
    private String documentNum;

    /**
     * 送鉴日期
     */
    @Excel(name = "送鉴日期", width = 30, dateFormat = "yyyy-MM-dd", type = Excel.Type.ALL)
    private Date sendDate;

    /**
     * 受理日期
     */
    @Excel(name = "受理日期", width = 30, dateFormat = "yyyy-MM-dd", type = Excel.Type.ALL)
    private Date acceptDate;

    /**
     * 鉴定组长id
     */
//    @Excel(name = "鉴定组长id")
    private Long groupId;

    /**
     * 鉴定组长
     */
//    @Excel(name = "鉴定组长", type = Excel.Type.ALL)
    private String groupLeader;

    /**
     * 鉴定内容
     */
//    @Excel(name = "鉴定内容")
    private String identContent;

    /**
     * 来函文件
     */
//    @Excel(name = "来函文件")
    private String acceptFiles;

    /**
     * 样本类别
     */
    @Excel(name = "样本类别", type = Excel.Type.ALL, dictType = "id_sample_type", width = 25)
    private String category;

    /**
     * 样本种类
     */
    @Excel(name = "样本种类数量", type = Excel.Type.ALL)
    private String types;

    /**
     * 样本数量
     */
    @Excel(name = "样本数量", type = Excel.Type.ALL, cellType = Excel.ColumnType.NUMERIC)
    private Long num;

    /**
     * 审核状态
     */
//    @Excel(name = "审核状态")
    private String auditStatus;

    /**
     * 是否启用
     */
//    @Excel(name = "是否启用")
    private String isUse;

    /**
     * 备用字段
     */
//    @Excel(name = "备用字段")
    private String ex1;

    /**
     * 备用字段
     */
//    @Excel(name = "备用字段")
    private String ex2;

    /**
     * 出版物鉴定受理通知书 word名称 uuid
     */
//    @Excel(name = "备用字段")
    private String ex3;

    /**
     * 出版物鉴定登记表 word名称 uuid
     */
//    @Excel(name = "备用字段")
    private String ex4;

    /**
     * 出版物鉴定 表 协查函 word名称 uuid  无附件
     */
//    @Excel(name = "备用字段")
    private String ex5;

    /**
     * 出版物鉴定 表 协查函 word名称 uuid  有附件
     */
    private String assistFile;

    /**
     * 出版物鉴定 表 送达登记表 word名称 uuid
     */
    private String deliver;

    /**
     * 已经审核用户
     */
    private String alreadyApprovalUser;


    /**
     * 审批原因
     */
    private String approvalReason;

    /**
     * 导出的id集合
     */
    private String exportIds;

    /**
     * 该记录下样本数量
     */
    private int sampleNum;

    //终版-鉴定登记表
    private String finalRegister;

    //终版-签发单
    private String finalIssue;

    //终版-送达登记表
    private String finalDeliver;

    public String getFinalRegister() {
        return finalRegister;
    }

    public void setFinalRegister(String finalRegister) {
        this.finalRegister = finalRegister;
    }

    public String getFinalIssue() {
        return finalIssue;
    }

    public void setFinalIssue(String finalIssue) {
        this.finalIssue = finalIssue;
    }

    public String getFinalDeliver() {
        return finalDeliver;
    }

    public void setFinalDeliver(String finalDeliver) {
        this.finalDeliver = finalDeliver;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setCreateName(String createName) {
        this.createName = createName;
    }

    public String getCreateName() {
        return createName;
    }

    public void setUpdateName(String updateName) {
        this.updateName = updateName;
    }

    public String getUpdateName() {
        return updateName;
    }

    public void setSendUnitId(Long sendUnitId) {
        this.sendUnitId = sendUnitId;
    }

    public Long getSendUnitId() {
        return sendUnitId;
    }

    public void setSendUnit(String sendUnit) {
        this.sendUnit = sendUnit;
    }

    @ExcelField(required = ExcelField.ExcelRequired.must, filedName = "送鉴单位")
    public String getSendUnit() {
        return sendUnit;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    @ExcelField(required = ExcelField.ExcelRequired.must, filedName = "来文标题")
    public String getTitle() {
        return title;
    }

    public void setDocumentNum(String documentNum) {
        this.documentNum = documentNum;
    }

    @ExcelField(required = ExcelField.ExcelRequired.must, filedName = "来文文号")
    public String getDocumentNum() {
        return documentNum;
    }

    public void setSendDate(Date sendDate) {
        this.sendDate = sendDate;
    }

    @ExcelField(required = ExcelField.ExcelRequired.no, filedName = "送鉴日期")
    public Date getSendDate() {
        return sendDate;
    }

    public void setAcceptDate(Date acceptDate) {
        this.acceptDate = acceptDate;
    }

    @ExcelField(required = ExcelField.ExcelRequired.no, filedName = "受理日期")
    public Date getAcceptDate() {
        return acceptDate;
    }

    public void setGroupId(Long groupId) {
        this.groupId = groupId;
    }

    public Long getGroupId() {
        return groupId;
    }

    public void setGroupLeader(String groupLeader) {
        this.groupLeader = groupLeader;
    }

    public String getGroupLeader() {
        return groupLeader;
    }

    public void setIdentContent(String identContent) {
        this.identContent = identContent;
    }

    public String getIdentContent() {
        return identContent;
    }

    public void setAcceptFiles(String acceptFiles) {
        this.acceptFiles = acceptFiles;
    }

    public String getAcceptFiles() {
        return acceptFiles;
    }

    public void setCategory(String category) {
        this.category = category;
    }

    @ExcelField(required = ExcelField.ExcelRequired.must, filedName = "样本类别")
    public String getCategory() {
        return category;
    }

    public void setTypes(String types) {
        this.types = types;
    }

    @ExcelField(required = ExcelField.ExcelRequired.must, filedName = "样本种类数量")
    public String getTypes() {
        return types;
    }

    public void setNum(Long num) {
        this.num = num;
    }

    @ExcelField(required = ExcelField.ExcelRequired.must, filedName = "样本数量")
    public Long getNum() {
        return num;
    }

    public void setAuditStatus(String auditStatus) {
        this.auditStatus = auditStatus;
    }

    public String getAuditStatus() {
        return auditStatus;
    }

    public void setIsUse(String isUse) {
        this.isUse = isUse;
    }

    public String getIsUse() {
        return isUse;
    }

    public void setEx1(String ex1) {
        this.ex1 = ex1;
    }

    public String getEx1() {
        return ex1;
    }

    public void setEx2(String ex2) {
        this.ex2 = ex2;
    }

    public String getEx2() {
        return ex2;
    }

    public void setEx3(String ex3) {
        this.ex3 = ex3;
    }

    public String getEx3() {
        return ex3;
    }

    public void setEx4(String ex4) {
        this.ex4 = ex4;
    }

    public String getEx4() {
        return ex4;
    }

    public void setEx5(String ex5) {
        this.ex5 = ex5;
    }

    public String getEx5() {
        return ex5;
    }

    public String getAssistFile() {
        return assistFile;
    }

    public void setAssistFile(String assistFile) {
        this.assistFile = assistFile;
    }

    public String getDeliver() {
        return deliver;
    }

    public void setDeliver(String deliver) {
        this.deliver = deliver;
    }

    public void setAlreadyApprovalUser(String alreadyApprovalUser) {
        this.alreadyApprovalUser = alreadyApprovalUser;
    }

    public String getAlreadyApprovalUser() {
        return this.alreadyApprovalUser;
    }

    public String getApprovalReason() {
        return approvalReason;
    }

    public void setApprovalReason(String approvalReason) {
        this.approvalReason = approvalReason;
    }

    public String getExportIds() {
        return exportIds;
    }

    public void setExportIds(String exportIds) {
        this.exportIds = exportIds;
    }

    public int getSampleNum() {
        return sampleNum;
    }

    public void setSampleNum(int sampleNum) {
        this.sampleNum = sampleNum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("createName", getCreateName())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateName", getUpdateName())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("sendUnitId", getSendUnitId())
                .append("sendUnit", getSendUnit())
                .append("title", getTitle())
                .append("documentNum", getDocumentNum())
                .append("sendDate", getSendDate())
                .append("acceptDate", getAcceptDate())
                .append("groupId", getGroupId())
                .append("groupLeader", getGroupLeader())
                .append("identContent", getIdentContent())
                .append("files", getAcceptFiles())
                .append("category", getCategory())
                .append("types", getTypes())
                .append("num", getNum())
                .append("auditStatus", getAuditStatus())
                .append("isUse", getIsUse())
                .append("remark", getRemark())
                .append("ex1", getEx1())
                .append("ex2", getEx2())
                .append("ex3", getEx3())
                .append("ex4", getEx4())
                .append("ex5", getEx5())
                .toString();
    }
}
